Telegram Group Search
Блог владельца «Java Developer»

Жизнь в Telegram и за его пределами, бизнес на каналах и никакого программирования:

https://www.tg-me.com/+erFDhr6H1bgxZGZi
Что выведет код сверху?
Anonymous Quiz
17%
Yes
40%
No
30%
Yes No
12%
Ошибка
Please open Telegram to view this post
VIEW IN TELEGRAM
Вопрос с собеседования

Чем отличается JDBC от Hibernate?

Ответ: JDBC — это низкоуровневый API для прямой работы с базой данных через SQL-запросы, тогда как Hibernate — это ORM-фреймворк, который позволяет работать с базой через объектную модель.

При использовании JDBC разработчик сам управляет соединениями, пишет SQL, обрабатывает ResultSet, а в Hibernate всё это абстрагируется: объекты автоматически мапятся на таблицы, запросы могут писаться через HQL или Criteria API, а управление транзакциями и кэшированием встроено.


tags: #собеседование

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Управление транзакциями в Spring: подробно о @Transactional

В статье рассказывается, как устроена аннотация @Transactional в Spring и почему иногда транзакции ведут себя не так, как вы ожидаете.

Автор подробно объясняет, как работают прокси, откаты, вложенные транзакции и связь с JPA — с примерами кода, подводными камнями и разбором типичных ошибок.

Читать статью

tags: #статья

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Вопрос с собеседования

Что такое интерфейс Executor и зачем он нужен?

Ответ: Executor — это интерфейс из стандартной библиотеки Java, который позволяет запускать задачи в отдельных потоках без явного создания или управления ими. Он упрощает работу с многопоточностью, позволяя делегировать выполнение задач пулам потоков. Вместо ручного запуска каждого потока, задача передаётся исполнителю, который сам решает, когда и как её запустить. В связке с Callable и Future он используется для асинхронного выполнения с возможностью получить результат.

📱 Java Developer | #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Вопрос с собеседования

Что такое Redis и зачем он используется?

Ответ: Redis — это хранилище данных в оперативной памяти, предназначенное для быстрого доступа к информации. Он поддерживает разные структуры данных — строки, списки, множества, словари — и применяется там, где важна скорость: кэширование, хранение сессий, подсчёт событий, временные блокировки и очереди. Благодаря работе в памяти, Redis обеспечивает отклик за миллисекунды и часто используется в высоконагруженных системах и микросервисной архитектуре.

tags: #собеседование

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Делаем свою простейшую систему сборки для Java

Многие новички в программировании привыкают к тому, что для запуска Java-приложения достаточно создать Gradle/Maven-проект, нажать кнопку в IDE — и все работает.

Но стоит выйти за рамки стандартных сценариев, как процесс сборки превращается в “черный ящик”, а разобраться, что происходит под капотом, становится непросто.

В статье автор объясняет, как работает компиляция в Java, показывает, как вручную собрать и запустить программу, а затем шаг за шагом подводит к созданию собственной системы сборки.

Читать статью

tags: #статья

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Вопрос с собеседования

Какими основными способами можно конфигурировать бины в Spring?

Ответ: В Spring бины можно конфигурировать следующими способами:

▶️ XML-конфигурация

▶️ Аннотации (например, @Component, @Service, @Repository)

▶️ Java-классы с аннотацией @Configuration и методами, помеченными @Bean

tags: #собеседование

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
💻 Вопросы по SQL, которые часто задают на собеседовании

В этом цикле статей автор делится вопросами по SQL, с которыми вы можете столкнуться на собеседовании.

В первой части — базовые темы: первичный и внешний ключ, виды соединений, подзапросы, GROUP BY, CTE и другие часто спрашиваемые концепции.

Первая часть

Во второй — более продвинутые вопросы: подзапросы, индексы, оптимизация запросов, хранимые процедуры, транзакции, представления, функции, денормализация, типы индексов и триггеры.

Вторая часть

tags: #статья

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
Вопрос с собеседования

Чем CompletableFuture отличается от Future и в чём его преимущества?

Ответ: CompletableFuture расширяет возможности обычного Future, предоставляя полноценную поддержку асинхронного и неблокирующего программирования.

В отличие от Future, где результат приходится ждать вручную через get(), CompletableFuture позволяет задать цепочку действий, которые автоматически выполнятся после завершения задачи — без блокировки потока.

Он поддерживает композицию (например, через thenCompose, thenCombine), удобную обработку ошибок (exceptionally, handle), и может выполнять задачи в отдельных потоках (supplyAsync).

Это делает его особенно полезным для построения реактивных и параллельных программ, где важно управлять зависимостями между задачами и обрабатывать результат без лишней синхронизации.


tags: #собеседование

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Как ускорить Maven сборку без переезда на Gradle?

В статье обсуждаются методы ускорения сборки проектов на Maven без необходимости перехода на другие системы.

Автор рассказывает, какие подходы позволяют сократить время сборки и улучшить производительность без кардинальных изменений в проекте.

Читать статью

tags: #статья

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
2025/06/13 14:34:50
Back to Top
HTML Embed Code: